//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by FernFlower decompiler)
//

package com.carhailing.common.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import java.math.BigDecimal;
import java.util.Date;
import org.springframework.format.annotation.DateTimeFormat;

public class InvoiceApplyDto {
    private Long InvoiceApplyId;
    private String InvoiceApplyNumber;
    private Long userId;
    private String userName;
    private String userPhone;
    @DateTimeFormat(
            pattern = "yyyy-MM-dd HH:mm:ss"
    )
    @JsonFormat(
            pattern = "yyyy-MM-dd HH:mm:ss",
            timezone = "GMT+8"
    )
    private Date applyTime;
    private String invoiceSubject;
    private BigDecimal invoiceAmount;
    private String invoiceType;
    private String invoiceStatus;
    private String userStatus;

    public InvoiceApplyDto() {
    }

    public Long getInvoiceApplyId() {
        return this.InvoiceApplyId;
    }

    public String getInvoiceApplyNumber() {
        return this.InvoiceApplyNumber;
    }

    public Long getUserId() {
        return this.userId;
    }

    public String getUserName() {
        return this.userName;
    }

    public String getUserPhone() {
        return this.userPhone;
    }

    public Date getApplyTime() {
        return this.applyTime;
    }

    public String getInvoiceSubject() {
        return this.invoiceSubject;
    }

    public BigDecimal getInvoiceAmount() {
        return this.invoiceAmount;
    }

    public String getInvoiceType() {
        return this.invoiceType;
    }

    public String getInvoiceStatus() {
        return this.invoiceStatus;
    }

    public String getUserStatus() {
        return this.userStatus;
    }

    public void setInvoiceApplyId(final Long InvoiceApplyId) {
        this.InvoiceApplyId = InvoiceApplyId;
    }

    public void setInvoiceApplyNumber(final String InvoiceApplyNumber) {
        this.InvoiceApplyNumber = InvoiceApplyNumber;
    }

    public void setUserId(final Long userId) {
        this.userId = userId;
    }

    public void setUserName(final String userName) {
        this.userName = userName;
    }

    public void setUserPhone(final String userPhone) {
        this.userPhone = userPhone;
    }

    @JsonFormat(
            pattern = "yyyy-MM-dd HH:mm:ss",
            timezone = "GMT+8"
    )
    public void setApplyTime(final Date applyTime) {
        this.applyTime = applyTime;
    }

    public void setInvoiceSubject(final String invoiceSubject) {
        this.invoiceSubject = invoiceSubject;
    }

    public void setInvoiceAmount(final BigDecimal invoiceAmount) {
        this.invoiceAmount = invoiceAmount;
    }

    public void setInvoiceType(final String invoiceType) {
        this.invoiceType = invoiceType;
    }

    public void setInvoiceStatus(final String invoiceStatus) {
        this.invoiceStatus = invoiceStatus;
    }

    public void setUserStatus(final String userStatus) {
        this.userStatus = userStatus;
    }

    public boolean equals(final Object o) {
        if (o == this) {
            return true;
        } else if (!(o instanceof InvoiceApplyDto)) {
            return false;
        } else {
            InvoiceApplyDto other = (InvoiceApplyDto)o;
            if (!other.canEqual(this)) {
                return false;
            } else {
                label143: {
                    Object this$InvoiceApplyId = this.getInvoiceApplyId();
                    Object other$InvoiceApplyId = other.getInvoiceApplyId();
                    if (this$InvoiceApplyId == null) {
                        if (other$InvoiceApplyId == null) {
                            break label143;
                        }
                    } else if (this$InvoiceApplyId.equals(other$InvoiceApplyId)) {
                        break label143;
                    }

                    return false;
                }

                Object this$userId = this.getUserId();
                Object other$userId = other.getUserId();
                if (this$userId == null) {
                    if (other$userId != null) {
                        return false;
                    }
                } else if (!this$userId.equals(other$userId)) {
                    return false;
                }

                Object this$InvoiceApplyNumber = this.getInvoiceApplyNumber();
                Object other$InvoiceApplyNumber = other.getInvoiceApplyNumber();
                if (this$InvoiceApplyNumber == null) {
                    if (other$InvoiceApplyNumber != null) {
                        return false;
                    }
                } else if (!this$InvoiceApplyNumber.equals(other$InvoiceApplyNumber)) {
                    return false;
                }

                label122: {
                    Object this$userName = this.getUserName();
                    Object other$userName = other.getUserName();
                    if (this$userName == null) {
                        if (other$userName == null) {
                            break label122;
                        }
                    } else if (this$userName.equals(other$userName)) {
                        break label122;
                    }

                    return false;
                }

                label115: {
                    Object this$userPhone = this.getUserPhone();
                    Object other$userPhone = other.getUserPhone();
                    if (this$userPhone == null) {
                        if (other$userPhone == null) {
                            break label115;
                        }
                    } else if (this$userPhone.equals(other$userPhone)) {
                        break label115;
                    }

                    return false;
                }

                Object this$applyTime = this.getApplyTime();
                Object other$applyTime = other.getApplyTime();
                if (this$applyTime == null) {
                    if (other$applyTime != null) {
                        return false;
                    }
                } else if (!this$applyTime.equals(other$applyTime)) {
                    return false;
                }

                Object this$invoiceSubject = this.getInvoiceSubject();
                Object other$invoiceSubject = other.getInvoiceSubject();
                if (this$invoiceSubject == null) {
                    if (other$invoiceSubject != null) {
                        return false;
                    }
                } else if (!this$invoiceSubject.equals(other$invoiceSubject)) {
                    return false;
                }

                label94: {
                    Object this$invoiceAmount = this.getInvoiceAmount();
                    Object other$invoiceAmount = other.getInvoiceAmount();
                    if (this$invoiceAmount == null) {
                        if (other$invoiceAmount == null) {
                            break label94;
                        }
                    } else if (this$invoiceAmount.equals(other$invoiceAmount)) {
                        break label94;
                    }

                    return false;
                }

                label87: {
                    Object this$invoiceType = this.getInvoiceType();
                    Object other$invoiceType = other.getInvoiceType();
                    if (this$invoiceType == null) {
                        if (other$invoiceType == null) {
                            break label87;
                        }
                    } else if (this$invoiceType.equals(other$invoiceType)) {
                        break label87;
                    }

                    return false;
                }

                Object this$invoiceStatus = this.getInvoiceStatus();
                Object other$invoiceStatus = other.getInvoiceStatus();
                if (this$invoiceStatus == null) {
                    if (other$invoiceStatus != null) {
                        return false;
                    }
                } else if (!this$invoiceStatus.equals(other$invoiceStatus)) {
                    return false;
                }

                Object this$userStatus = this.getUserStatus();
                Object other$userStatus = other.getUserStatus();
                if (this$userStatus == null) {
                    if (other$userStatus != null) {
                        return false;
                    }
                } else if (!this$userStatus.equals(other$userStatus)) {
                    return false;
                }

                return true;
            }
        }
    }

    protected boolean canEqual(final Object other) {
        return other instanceof InvoiceApplyDto;
    }

    public int hashCode() {

        int result = 1;
        Object $InvoiceApplyId = this.getInvoiceApplyId();
        result = result * 59 + ($InvoiceApplyId == null ? 43 : $InvoiceApplyId.hashCode());
        Object $userId = this.getUserId();
        result = result * 59 + ($userId == null ? 43 : $userId.hashCode());
        Object $InvoiceApplyNumber = this.getInvoiceApplyNumber();
        result = result * 59 + ($InvoiceApplyNumber == null ? 43 : $InvoiceApplyNumber.hashCode());
        Object $userName = this.getUserName();
        result = result * 59 + ($userName == null ? 43 : $userName.hashCode());
        Object $userPhone = this.getUserPhone();
        result = result * 59 + ($userPhone == null ? 43 : $userPhone.hashCode());
        Object $applyTime = this.getApplyTime();
        result = result * 59 + ($applyTime == null ? 43 : $applyTime.hashCode());
        Object $invoiceSubject = this.getInvoiceSubject();
        result = result * 59 + ($invoiceSubject == null ? 43 : $invoiceSubject.hashCode());
        Object $invoiceAmount = this.getInvoiceAmount();
        result = result * 59 + ($invoiceAmount == null ? 43 : $invoiceAmount.hashCode());
        Object $invoiceType = this.getInvoiceType();
        result = result * 59 + ($invoiceType == null ? 43 : $invoiceType.hashCode());
        Object $invoiceStatus = this.getInvoiceStatus();
        result = result * 59 + ($invoiceStatus == null ? 43 : $invoiceStatus.hashCode());
        Object $userStatus = this.getUserStatus();
        result = result * 59 + ($userStatus == null ? 43 : $userStatus.hashCode());
        return result;
    }

    public String toString() {
        return "InvoiceApplyDto(InvoiceApplyId=" + this.getInvoiceApplyId() + ", InvoiceApplyNumber=" + this.getInvoiceApplyNumber() + ", userId=" + this.getUserId() + ", userName=" + this.getUserName() + ", userPhone=" + this.getUserPhone() + ", applyTime=" + this.getApplyTime() + ", invoiceSubject=" + this.getInvoiceSubject() + ", invoiceAmount=" + this.getInvoiceAmount() + ", invoiceType=" + this.getInvoiceType() + ", invoiceStatus=" + this.getInvoiceStatus() + ", userStatus=" + this.getUserStatus() + ")";
    }
}
